const express =require("express");
const jwt = require("jsonwebtoken");
const key = "sdfafjkjsdjflkdskjfk";
const cookieParser=require("cookie-parser")
const md5=require('blueimp-md5');
const router=express.Router();
const filter={password:0}
const {User} =require("../model/model")
//登录
router.post("/login",function (req,res) {
    // 获取前端提交过来的数据
    const {usr,pwd}=req.body;
    // 访问数据库后将用户名和密码获取到，密码加密获取的
    User.findOne({usr,pwd:md5(pwd)},filter,function(err,user){
        if(user){
            // 如果成功后，获得jsonwebtooken中的tooken
            // 这里的key是自己定义好的一个字符串（随便定义）
            const token=jwt.sign({usr:usr},key);
            // 通过cookie存储token
            res.cookie("token",token)
            // 登录成功后返回给前端的数据
            res.send({
                code:200,
                msg:'登录成功',
                user:usr,
                token:token
            })
        }else{
            // 登录失败
            res.send({
                code:101,
                msg:'登录失败'
            });
            return;
        }
    })
})
//查询所有
router.get("/findUserAll",(req,res)=>{
    User.find({},function (err,user) {
    if(err){
        console.log("没有对应数据！",+err);
    }else{
        res.send({
            code:200,
            msg:"查询成功！",
            result:user
        })
    }
})
});
router.post("/register",(req,res)=>{
    const {usr,pwd} =req.body;
User.findOne({usr},function (err,user) {
    if(user){
        res.send({code:101,msg:"该用户已经存在"})
    }else{
        new User({usr:usr,pwd:md5(pwd)}).save(function (err,user) {
            if(err){
                res.send({
                    code:-1,
                    msg:"注册失败"
                })
            }else{
                res.send({
                    code:200,
                    msg:"注册成功",
                    data:{
                        userId:user._id
                    }
                })
            }
        })
    }
})
});
module.exports = router;